#pragma once

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>

typedef int LTDatatype;
typedef struct Listnode
{
	LTDatatype data;
	struct Listnode* next;
	struct Listnode* prev;
}Listnode;

Listnode* ListCreat();
void ListDestory(Listnode* phead);
void ListPrint(Listnode* phead);

void ListPushFont(Listnode* phead, LTDatatype x);
void ListPushBack(Listnode* phead, LTDatatype x);
void ListPopFront(Listnode* phead);
void ListPopBack(Listnode* phead);

void ListInsert(Listnode* pos, LTDatatype x);
void ListErase(Listnode* pos);

Listnode* ListFind(Listnode* phead, LTDatatype x);

